#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <sys/wait.h>

#include "system.h"
#include "pr_exit.h"

static void print_err(char *str) {
    perror(str);
    exit(1);
}

/**
* 利用system()执行一个shell命令, 并获取其终止状态status, 即system返回值
*/

int main() {
    int status;

    if ((status = system("date")) < 0)
        print_err("system() error");

    pr_exit(status);


    if ((status = system("nosuchcommand")) < 0)
        print_err("system() error");

    pr_exit(status);


    if ((status = system("who; exit 44")) < 0)
        print_err("system() error");

    pr_exit(status);

    if ((status = system("ls -l")) < 0)
        print_err("system() error");

    pr_exit(status);
    
    exit(0);
}
